package com.tangqi.other;

/**
级数 全月应纳税所得额                                 税率%   速算扣除数（元）
一	不超过500元                                               5	    0
二	超过500元至2000元	        10	    25
三	超过2000元至5000元	        15	    125
四	超过5000元至20000元	        20	    375
五	超过20000元至40000元	        25	    1375
六	超过40000元至60000元	        30	    3375
七	超过60000元至80000元	        35	    6375
八	超过80000元至100000元	    40	    10375 
九	超过100000元	                45	    15375
 * @author qtang
 *
 */
public class PersonalIncomeTax {
     public static final int BASE_INCOME = 2000;
     
     public double calculate(int income){
    	 int taxbase = income - BASE_INCOME;
    	 double incomeTax = 0.0;
    	 if(taxbase<=0){
    		 return incomeTax;
    	 }else if(taxbase<=500){
    		 incomeTax = taxbase*0.05;
    	 }else if(taxbase<=2000){
    		 incomeTax = taxbase*0.1-25;
    	 }else if(taxbase<=5000){
    		 incomeTax = taxbase*0.15-175;
    	 }else if(taxbase<=20000){
    		 incomeTax = taxbase*0.2-375;
    	 }else if(taxbase<=40000){
    		 incomeTax = taxbase*0.25-1375;
    	 }else if(taxbase<=60000){
    		 incomeTax = taxbase*0.3-3375;
    	 }else if(taxbase<=80000){
    		 incomeTax = taxbase*0.35-6375;
    	 }else if(taxbase<=100000){
    		 incomeTax = taxbase*0.4-10375;
    	 }else{
    		 incomeTax = taxbase*0.45-15375;
    	 }
    	 return incomeTax;
     }
     
     public static void main(String[] args) {
    	 PersonalIncomeTax pit = new PersonalIncomeTax();
    	 System.out.println("3000\t"+pit.calculate(3000));
    	 System.out.println("5000\t"+pit.calculate(5000));
    	 System.out.println("8000\t"+pit.calculate(8000));
    	 System.out.println("10000\t"+pit.calculate(10000));
    	 System.out.println("20000\t"+pit.calculate(20000));
	 }
}
